Computer animation is the art of creating moving images via the use of computers. To create the illusion of movement, an image is displayed on the computer screen then quickly replaced by a new image that is similar to the previous image, but shifted slightly. This technique is identical to how the illusion of movement is achieved with television and motion pictures. Increasingly computer animation is created by means of 3D computer graphics programs. Such programs often use physics simulator routines to more realistically depict events being animated. A physics simulator models objects depicted in an animation based on physical laws. For example, a physics simulator may model the forces acting on an object and, based on those forces, determine the object's acceleration at a frame of the animation. From the acceleration, the simulator can determine the object's velocity in the next frame. From the objects current velocity and position, the simulator may determine the object's position in a subsequent frame. The forces can be based partly on input from a user interacting with the object via an input such as a joystick, steering controller, or other interface. As such, physics simulators are particularly useful for simulating interaction with characters in a video game.
Computer animation has been used to simulate liquids such as water in video games and computer animation for motion pictures. Realistic depiction of liquids presents numerous challenges in physically modeling the behavior of the liquid in terms of its motion and its optical effects. One particular challenge in computer simulation of the behavior of liquids is the simulation of a liquid splashing. When a real liquid splashes some of the liquid may separate into droplets. Unfortunately, techniques for realistically and efficiently computer simulating such splashing behavior of liquids and similar materials have been unsatisfactory.
Particles systems and even smoothed particles (also called meta-balls), with some interaction forces, for fast fluid simulation. Smoothed particle hydrodynamics (SPH) was a more rigorous version of this. Application of this technique to graphics is described, e.g., in “Smoothed Particles: A new paradigm for animating highly deformable bodies” by Desbrun and Gascuel. There was also a real-time implementation of SPH and marching cubes on the web by a programmer named Takashi Amada.
There are non-particle methods, i.e., grid methods, used for splashing animations but they are typically expensive and used for off-line simulations. Methods presented by Jos Stam were real-time but it is believed they were limited to gaseous fluids, and the demos at least were only 2-D.
Thus, there is a need in the art, for a method for simulating the behavior of liquids and an apparatus for implementing such a method.